cairo_surface_t *
_gdk_window_ref_cairo_surface (GdkWindow *window);
-GdkWindow* gdk_window_new (GdkWindow *parent,
+GdkWindow* gdk_window_new (GdkDisplay *display,
+ GdkWindow *parent,
GdkWindowAttr *attributes);
void _gdk_window_destroy (GdkWindow *window,
gboolean foreign_destroy);
}
GdkWindow*
-gdk_window_new (GdkWindow *parent,
+gdk_window_new (GdkDisplay *display,
+ GdkWindow *parent,
GdkWindowAttr *attributes)
{
GdkWindow *window;
GdkScreen *screen;
- GdkDisplay *display;
gboolean native;
GdkEventMask event_mask;
if (!parent)
{
- screen = gdk_screen_get_default ();
+ screen = gdk_display_get_default_screen (display);
parent = gdk_screen_get_root_window (screen);
}
else
return NULL;
}
- display = gdk_screen_get_display (screen);
-
window = _gdk_display_create_window (display);
window->parent = parent;
attr.height = height;
attr.window_type = GDK_WINDOW_TOPLEVEL;
- return gdk_window_new (NULL, &attr);
+ return gdk_window_new (display, NULL, &attr);
}
/**
attr.height = position->height;
attr.window_type = GDK_WINDOW_TEMP;
- return gdk_window_new (NULL, &attr);
+ return gdk_window_new (display, NULL, &attr);
}
/**
attr.height = 10;
attr.window_type = GDK_WINDOW_TEMP;
- return gdk_window_new (NULL, &attr);
+ return gdk_window_new (display, NULL, &attr);
}
/**
attr.height = position->height;
attr.window_type = GDK_WINDOW_CHILD;
- return gdk_window_new (parent, &attr);
+ return gdk_window_new (gdk_window_get_display (parent), parent, &attr);
}
/**
attr.height = position->height;
attr.window_type = GDK_WINDOW_SUBSURFACE;
- return gdk_window_new (gdk_screen_get_root_window (gdk_display_get_default_screen (display)),
+ return gdk_window_new (display,
+ gdk_screen_get_root_window (gdk_display_get_default_screen (display)),
&attr);
}